<?php
namespace app\index\controller;
use app\index\model\Category as CateModel;
use app\index\controller\Common;
/**
* 栏目控制器
*   @author 于江 2017年3月30日
*   邮箱935315164@qq.com
*/
class Category extends Common
{
	// 前置操作
	 protected $beforeActionList = [
        // 'first',
        // 'second' =>  ['except'=>'hello'],
        'delsoncate'  =>  ['only'=>'del'],//如果执行del那么先执行delsoncate
    ];
	// 栏目列表
	 public function index()
	{
		 $cate=new CateModel();
		  if(request()->isPost()){
            $sorts=input('post.');
            foreach ($sorts as $k => $v) {
                $cate->update(['cid'=>$k,'csort'=>$v]);
            }
            $this->success('更新排序成功！',url('index'));
            return;
        }

		$cateres=$cate->catetree();
		$this->assign('cateres',$cateres);
		return $this->fetch();
	}
	// 添加
	public function add(){
		$cate=new CateModel();
		if (request()->isPost()) {//如果是post提交
            $data=input('post.');
			$validate = \think\Loader::validate('Category');
            if(!$validate->scene('add')->check($data)){
                $this->error($validate->getError());
            }
			$cate->data($data);//接收数据
 			 // $validate = \think\Loader::validate('Category');
			$add=$cate->save();
			// var_dump($data);die;
            if($add){
                $this->success('添加栏目成功！',url('index'));
            }else{
                $this->error('添加栏目失败！');
            }
		}
		$category=$cate->catetree();
		$this->assign('category',$category);
		return $this->fetch();
	}

	// 编辑
	public function edit()
	{
		$cate=new CateModel();
		if (request()->isPost()) {
			$data=input('post.');
			// var_dump($data);die;
			// $validate = \think\Loader::validate('Category');
   //          if(!$validate->scene('edit')->check($data)){
   //              $this->error($validate->getError());
   //          }
            $validate = \think\Loader::validate('Category');
            if(!$validate->scene('edit')->check($data)){
                $this->error($validate->getError());
            }
            $save=$cate->save($data,['id'=>$data['cid']]);
            if($save !== false){
                $this->success('修改栏目成功！',url('index'));
            }else{
                $this->error('修改栏目失败！');
            }
            return;
		}
        $ids=input('id');
		$cates=$cate->find($ids);
		$category=$cate->catetree();
		$this->assign(array(
			'cates'=>$cates,//当前栏目信息
			'category'=>$category,
			));
		return $this->fetch();
	}
	// 删除
	public function del($id){
         $Cate=new CateModel();
        $delnum=$Cate->decate($id);
        if($delnum == '1'){
            $this->success('删除栏目成功！',url('index'));
        }else{
            $this->error('删除栏目失败！');
        }
    }
    // 删除子分类
    public function delsoncate()
    {
    	$cateid=input('id');//要删除的当前栏目id
    	$Cate=new CateModel();
    	$sonids=$Cate->getchilrenid($cateid);
    	// var_dump($sonids);die;
    	if ($sonids) {
    		db('category')->delete($sonids);
    	}
    	
    }

















}
